class EditorMenuPresenter extends AbstractPresenter {
  // Instacja widoku przekazana podczas tworzenia prezentera.
  private EditorMenuView editorMenuView;

  public EditorMenuPresenter(
      EditorMenuView editorMenuView,
      ActionManager actionManager,
      EventBus eventBus) {
    super(actionManager, eventBus);
    this.editorMenuView = editorMenuView;
    // Wykonanie podstawowych inicjalizacji.
    initBehavior();
    initHandlers();
  }
  // Ustawienie zachowań widoku.
  @Override
  protected void initBehavior() {
    // Ustawienie zachowania widoku na akcję
    // tworzenia nowego zadania.
    editorMenuView.setNewTaskBehavior(new Behavior() {

      @Override
      public void behave() {
        // Powiadomienie, że zadanie zostało utworzone.
        eventBus.fireEvent(new OpenTaskPreviewEvent());
        // Odblokowanie możliwości zapisu zadania.
        editorMenuView.unblockSaveTask();
      }
    });
    // Ustawienie zachowania widoku na akcję otwarcia
    // istniejącego zadania.
    editorMenuView.setOpenTaskBehavior(new Behavior() {

      @Override
      public void behave() {
        // Powiadomienie, wymuszające pokazanie komponentu
        // do wyboru zapisanego zadania.
        eventBus.fireEvent(new OpenTaskSelectorEvent());
      }
    });
  }
  // W razie potrzeby tutaj rejestrowane są uchwyty
  // zdarzeń przychodzących do komponentu.
  @Override
  protected void initHandlers() {}
}
